home *** CD-ROM | disk | FTP | other *** search
/ Skunkware 5 / Skunkware 5.iso / src / X11 / hop / hop.h < prev    next >
C/C++ Source or Header  |  1995-05-03  |  3KB  |  103 lines

  1.  
  2. /*************************************************************************
  3.  *                                                                       *
  4.  *  Copyright (c) 1992, 1993 Ronald Joe Record                           *
  5.  *                                                                       *
  6.  *  All rights reserved. No part of this program or publication may be   *
  7.  *  reproduced, transmitted, transcribed, stored in a retrieval system,  *
  8.  *  or translated into any language or computer language, in any form or *
  9.  *  by any means, electronic, mechanical, magnetic, optical, chemical,   *
  10.  *  biological, or otherwise, without the prior written permission of:   *
  11.  *                                                                       *
  12.  *      Ronald Joe Record (408) 458-3718                                 *
  13.  *      212 Owen St., Santa Cruz, California 95062 USA                   *
  14.  *                                                                       *
  15.  *************************************************************************/
  16.  
  17. /*
  18.  *    @(#) hop.h
  19.  */
  20. /*
  21.  *    Written by Ron Record (rr@sco.com) 07 Apr 1993.
  22.  */
  23.  
  24. #include "patchlevel.h"
  25. #include "libXrr.h"
  26. #include <math.h>
  27. #include <memory.h>
  28. #include <signal.h>
  29. #include <stdio.h>
  30. #include <stdlib.h>
  31. #include <string.h>
  32. #include <unistd.h>
  33. #include <values.h>
  34. #include <X11/Xlib.h> 
  35. #include <X11/StringDefs.h> 
  36. #include <X11/keysym.h> 
  37. #include <X11/cursorfont.h> 
  38. #include <X11/Xutil.h>
  39. #include <X11/Xatom.h>
  40.  
  41. #define ABS(a)    (((a)<0) ? (0-(a)) : (a) )
  42. #define Min(x,y) ((x < y)?x:y)
  43. #define Max(x,y) ((x > y)?x:y)
  44. #define MAX_ATTEMPTS 100
  45.  
  46. /* Useful mathematical constants that should have been defined in math.h 
  47.  * M_LOG2E    - log2(e)
  48.  * M_LN2        - ln(2)
  49.  * M_PI        - pi
  50.  */
  51. #ifndef M_LOG2E
  52. #define M_LOG2E    1.4426950408889634074
  53. #endif
  54. #ifndef M_PI
  55. #define M_PI    3.14159265358979323846
  56. #endif
  57. #ifndef M_LN2
  58. #define M_LN2      6.9314718055994530942E-1 /*Hex  2^-1 * 1.62E42FEFA39EF */
  59. #endif
  60.  
  61. /* Useful machine-dependent values that should have been defined in values.h
  62.  * LN_MAXDOUBLE    - the natural log of the largest double  -- log(MAXDOUBLE)
  63.  * LN_MINDOUBLE    - the natural log of the smallest double -- log(MINDOUBLE)
  64.  */
  65. #ifndef LN_MINDOUBLE
  66. #define LN_MINDOUBLE (M_LN2 * (DMINEXP - 1))
  67. #endif
  68. #ifndef LN_MAXDOUBLE
  69. #define LN_MAXDOUBLE (M_LN2 * DMAXEXP)
  70. #endif
  71.  
  72. #ifndef TRUE
  73. #define TRUE 1
  74. #define FALSE 0
  75. #endif
  76.  
  77. int STARTCOLOR=16;
  78. int INDEXINC=20;
  79. int mincolindex=41;
  80.  
  81. int screen;
  82. int numwheels = MAXWHEELS;
  83. Display*    dpy;
  84.  
  85. extern double fabs();
  86. extern long time();
  87. extern int optind;
  88. extern char *optarg;
  89.  
  90. Window canvas, help;
  91.  
  92. typedef struct {
  93.     int x, y;
  94. } xy_t;
  95.  
  96. points_t Points;
  97.  
  98. GC Data_GC[MAXCOLOR];
  99.  
  100. Pixmap  pixmap;
  101. XColor    Colors[MAXCOLOR];
  102. Colormap cmap;
  103.